package com.bdqn.pojo;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;

/**
 * 新闻实体类
 */
@Data
public class News implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    private Long id;
    @TableField("titleName")
    private String titleName; // 自动映射的是title_name字段，而不是titleName字段
    private String context;

    /**
     * 实现逻辑删除（通过在数据库表中添加一个逻辑删除（isDel）字段，删除数据时只是标记该字段的状态，而不是真实删除数据。以保证数据的完整性便于大数据分析。查询时自动过滤被标记删除的数据，删除语句换成修改语句。）
     */
    @TableLogic(value = "0", delval = "1") // 逻辑删除字段（0表示正常；1表示已删除）
    @TableField("isDel")
    private Integer isDel;

    /**
     * 实现乐观锁（通过在数据库表中添加一个版本号（version）字段，每次更新数据时，版本号加一。如果在更新的过程中，版本号已经被其他事务修改，则当前更新操作会失败。）
     */
    @Version
    private Integer version;

}